{
  "bundles": [
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-platform-audit-core",
      "artifactVersion": "10.10-HF33",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.ecm.platform.audit",
          "org.nuxeo.ecm.platform.audit.api",
          "org.nuxeo.ecm.platform.audit.web"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit",
        "id": "grp:org.nuxeo.ecm.platform.audit",
        "name": "org.nuxeo.ecm.platform.audit",
        "parentIds": [
          "grp:org.nuxeo.ecm.platform"
        ],
        "readmes": [],
        "version": "10.10"
      },
      "bundleId": "org.nuxeo.ecm.platform.audit",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.persistence.PersistenceComponent--hibernate",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.persistence/Contributions/org.nuxeo.ecm.platform.audit.service.persistence--hibernate",
              "id": "org.nuxeo.ecm.platform.audit.service.persistence--hibernate",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.persistence.PersistenceComponent",
                "name": "org.nuxeo.ecm.core.persistence.PersistenceComponent",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"hibernate\" target=\"org.nuxeo.ecm.core.persistence.PersistenceComponent\">\n    <hibernateConfiguration name=\"nxaudit-logs\">\n      <datasource>nxaudit-logs</datasource>\n      <properties>\n        <property name=\"hibernate.hbm2ddl.auto\">update</property>\n      </properties>\n    </hibernateConfiguration>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.persistence",
          "name": "org.nuxeo.ecm.platform.audit.service.persistence",
          "requirements": [],
          "resolutionOrder": 290,
          "services": [],
          "startOrder": 296,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<component name=\"org.nuxeo.ecm.platform.audit.service.persistence\">\n\n  <extension target=\"org.nuxeo.ecm.core.persistence.PersistenceComponent\"\n    point=\"hibernate\">\n    <hibernateConfiguration name=\"nxaudit-logs\">\n      <datasource>nxaudit-logs</datasource>\n      <properties>\n        <property name=\"hibernate.hbm2ddl.auto\">update</property>\n      </properties>\n    </hibernateConfiguration>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nxaudit-persistence-config.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--schema",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.core.types-contrib/Contributions/org.nuxeo.ecm.platform.audit.core.types-contrib--schema",
              "id": "org.nuxeo.ecm.platform.audit.core.types-contrib--schema",
              "registrationOrder": 12,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"schema\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n    <schema name=\"basicauditsearch\" prefix=\"bas\" src=\"schemas/basicauditsearch.xsd\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--doctype",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.core.types-contrib/Contributions/org.nuxeo.ecm.platform.audit.core.types-contrib--doctype",
              "id": "org.nuxeo.ecm.platform.audit.core.types-contrib--doctype",
              "registrationOrder": 12,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"doctype\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n\n    <facet name=\"ForceAudit\"/>\n\n    <doctype extends=\"Document\" name=\"BasicAuditSearch\">\n      <schema name=\"basicauditsearch\"/>\n      <schema name=\"dublincore\"/>\n      <schema name=\"common\"/>\n    </doctype>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.core.types-contrib",
          "name": "org.nuxeo.ecm.platform.audit.core.types-contrib",
          "requirements": [],
          "resolutionOrder": 291,
          "services": [],
          "startOrder": 291,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.platform.audit.core.types-contrib\" version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\" point=\"schema\">\n    <schema name=\"basicauditsearch\" prefix=\"bas\" src=\"schemas/basicauditsearch.xsd\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\" point=\"doctype\">\n\n    <facet name=\"ForceAudit\" />\n\n    <doctype name=\"BasicAuditSearch\" extends=\"Document\">\n      <schema name=\"basicauditsearch\" />\n      <schema name=\"dublincore\" />\n      <schema name=\"common\" />\n    </doctype>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/core-type-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.directory.GenericDirectory--directories",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.audit.directoryContrib/Contributions/org.nuxeo.audit.directoryContrib--directories",
              "id": "org.nuxeo.audit.directoryContrib--directories",
              "registrationOrder": 3,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.directory.GenericDirectory",
                "name": "org.nuxeo.ecm.directory.GenericDirectory",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"directories\" target=\"org.nuxeo.ecm.directory.GenericDirectory\">\n\n    <directory extends=\"template-vocabulary\" name=\"eventTypes\">\n      <dataFile>directories/event-types.csv</dataFile>\n      <types>\n        <type>system</type>\n      </types>\n    </directory>\n\n    <directory extends=\"template-vocabulary\" name=\"eventCategories\">\n      <dataFile>directories/event-categories.csv</dataFile>\n      <types>\n        <type>system</type>\n      </types>\n    </directory>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.audit.directoryContrib",
          "name": "org.nuxeo.audit.directoryContrib",
          "requirements": [],
          "resolutionOrder": 292,
          "services": [],
          "startOrder": 37,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.audit.directoryContrib\">\n\n  <extension target=\"org.nuxeo.ecm.directory.GenericDirectory\" point=\"directories\">\n\n    <directory name=\"eventTypes\" extends=\"template-vocabulary\">\n      <dataFile>directories/event-types.csv</dataFile>\n      <types>\n        <type>system</type>\n      </types>\n    </directory>\n\n    <directory name=\"eventCategories\" extends=\"template-vocabulary\">\n      <dataFile>directories/event-categories.csv</dataFile>\n      <types>\n        <type>system</type>\n      </types>\n    </directory>\n\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/directories-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.query.api.PageProviderService--providers",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.PageProviderservice.contrib/Contributions/org.nuxeo.ecm.platform.audit.PageProviderservice.contrib--providers",
              "id": "org.nuxeo.ecm.platform.audit.PageProviderservice.contrib--providers",
              "registrationOrder": 10,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.query.api.PageProviderService",
                "name": "org.nuxeo.ecm.platform.query.api.PageProviderService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"providers\" target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\">\n\n    <genericPageProvider class=\"org.nuxeo.ecm.platform.audit.api.AuditPageProvider\" name=\"DOCUMENT_HISTORY_PROVIDER_OLD\">\n      <whereClause docType=\"BasicAuditSearch\">\n        <fixedPart>\n          log.docUUID = ?\n        </fixedPart>\n        <predicate operator=\"BETWEEN\" parameter=\"log.eventDate\">\n          <field name=\"startDate\" schema=\"basicauditsearch\"/>\n          <field name=\"endDate\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"log.category\">\n          <field name=\"eventCategories\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"=\" parameter=\"log.eventId\">\n          <field name=\"eventId\" schema=\"basicauditsearch\"/>\n        </predicate>\n      </whereClause>\n      <sort ascending=\"true\" column=\"log.eventDate\"/>\n      <pageSize>10</pageSize>\n    </genericPageProvider>\n\n    <genericPageProvider class=\"org.nuxeo.ecm.platform.audit.api.AuditPageProvider\" name=\"LATEST_AUDITED_CREATED_USERS_OR_GROUPS_PROVIDER\">\n      <whereClause docType=\"BasicAuditSearch\">\n        <fixedPart>\n          log.eventId = 'user_created' OR log.eventId = 'group_created'\n        </fixedPart>\n      </whereClause>\n      <sort ascending=\"false\" column=\"log.eventDate\"/>\n      <pageSize>10</pageSize>\n    </genericPageProvider>\n\n    <genericPageProvider class=\"org.nuxeo.ecm.platform.audit.provider.LatestCreatedUsersOrGroupsPageProvider\" name=\"LATEST_CREATED_USERS_OR_GROUPS_PROVIDER\">\n    </genericPageProvider>\n\n    <genericPageProvider class=\"org.nuxeo.ecm.platform.audit.api.document.DocumentHistoryPageProvider\" name=\"DOCUMENT_HISTORY_PROVIDER\">\n      <whereClause docType=\"BasicAuditSearch\">\n        <predicate operator=\"BETWEEN\" parameter=\"log.eventDate\">\n          <field name=\"startDate\" schema=\"basicauditsearch\"/>\n          <field name=\"endDate\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"=\" parameter=\"log.category\">\n          <field name=\"eventCategory\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"log.category\">\n          <field name=\"eventCategories\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"=\" parameter=\"log.eventId\">\n          <field name=\"eventId\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"log.eventId\">\n          <field name=\"eventIds\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"=\" parameter=\"log.principalName\">\n          <field name=\"principalName\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"log.principalName\">\n          <field name=\"principalNames\" schema=\"basicauditsearch\"/>\n        </predicate>\n      </whereClause>\n      <sort ascending=\"false\" column=\"log.eventDate\"/>\n      <sort ascending=\"false\" column=\"log.id\"/>\n      <pageSize>10</pageSize>\n      <maxPageSize>1000</maxPageSize>\n    </genericPageProvider>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.PageProviderservice.contrib",
          "name": "org.nuxeo.ecm.platform.audit.PageProviderservice.contrib",
          "requirements": [],
          "resolutionOrder": 293,
          "services": [],
          "startOrder": 288,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.platform.audit.PageProviderservice.contrib\">\n\n  <extension target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\"\n    point=\"providers\">\n\n    <genericPageProvider name=\"DOCUMENT_HISTORY_PROVIDER_OLD\"\n      class=\"org.nuxeo.ecm.platform.audit.api.AuditPageProvider\">\n      <whereClause docType=\"BasicAuditSearch\">\n        <fixedPart>\n          log.docUUID = ?\n        </fixedPart>\n        <predicate parameter=\"log.eventDate\" operator=\"BETWEEN\">\n          <field schema=\"basicauditsearch\" name=\"startDate\" />\n          <field schema=\"basicauditsearch\" name=\"endDate\" />\n        </predicate>\n        <predicate parameter=\"log.category\" operator=\"IN\">\n          <field schema=\"basicauditsearch\" name=\"eventCategories\" />\n        </predicate>\n        <predicate parameter=\"log.eventId\" operator=\"=\">\n          <field schema=\"basicauditsearch\" name=\"eventId\" />\n        </predicate>\n      </whereClause>\n      <sort column=\"log.eventDate\" ascending=\"true\" />\n      <pageSize>10</pageSize>\n    </genericPageProvider>\n\n    <genericPageProvider name=\"LATEST_AUDITED_CREATED_USERS_OR_GROUPS_PROVIDER\"\n      class=\"org.nuxeo.ecm.platform.audit.api.AuditPageProvider\">\n      <whereClause docType=\"BasicAuditSearch\">\n        <fixedPart>\n          log.eventId = 'user_created' OR log.eventId = 'group_created'\n        </fixedPart>\n      </whereClause>\n      <sort column=\"log.eventDate\" ascending=\"false\" />\n      <pageSize>10</pageSize>\n    </genericPageProvider>\n\n    <genericPageProvider name=\"LATEST_CREATED_USERS_OR_GROUPS_PROVIDER\"\n      class=\"org.nuxeo.ecm.platform.audit.provider.LatestCreatedUsersOrGroupsPageProvider\">\n    </genericPageProvider>\n\n    <genericPageProvider name=\"DOCUMENT_HISTORY_PROVIDER\"\n      class=\"org.nuxeo.ecm.platform.audit.api.document.DocumentHistoryPageProvider\">\n      <whereClause docType=\"BasicAuditSearch\">\n        <predicate parameter=\"log.eventDate\" operator=\"BETWEEN\">\n          <field schema=\"basicauditsearch\" name=\"startDate\" />\n          <field schema=\"basicauditsearch\" name=\"endDate\" />\n        </predicate>\n        <predicate parameter=\"log.category\" operator=\"=\">\n          <field schema=\"basicauditsearch\" name=\"eventCategory\" />\n        </predicate>\n        <predicate parameter=\"log.category\" operator=\"IN\">\n          <field schema=\"basicauditsearch\" name=\"eventCategories\" />\n        </predicate>\n        <predicate parameter=\"log.eventId\" operator=\"=\">\n          <field schema=\"basicauditsearch\" name=\"eventId\" />\n        </predicate>\n        <predicate parameter=\"log.eventId\" operator=\"IN\">\n          <field schema=\"basicauditsearch\" name=\"eventIds\" />\n        </predicate>\n        <predicate parameter=\"log.principalName\" operator=\"=\">\n          <field schema=\"basicauditsearch\" name=\"principalName\" />\n        </predicate>\n        <predicate parameter=\"log.principalName\" operator=\"IN\">\n          <field schema=\"basicauditsearch\" name=\"principalNames\" />\n        </predicate>\n      </whereClause>\n      <sort column=\"log.eventDate\" ascending=\"false\" />\n      <sort column=\"log.id\" ascending=\"false\" />\n      <pageSize>10</pageSize>\n      <maxPageSize>1000</maxPageSize>\n    </genericPageProvider>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/pageprovider-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentation": "\n    Core IO registered marshallers set.\n  \n",
          "documentationHtml": "<p>\nCore IO registered marshallers set.\n</p><p></p>",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.io.MarshallerRegistry--marshallers",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.io.marshallers/Contributions/org.nuxeo.ecm.platform.audit.io.marshallers--marshallers",
              "id": "org.nuxeo.ecm.platform.audit.io.marshallers--marshallers",
              "registrationOrder": 5,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.io.MarshallerRegistry",
                "name": "org.nuxeo.ecm.core.io.MarshallerRegistry",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"marshallers\" target=\"org.nuxeo.ecm.core.io.MarshallerRegistry\">\n    <!-- preview document enricher -->\n    <register class=\"org.nuxeo.ecm.platform.audit.io.LogEntryJsonWriter\" enable=\"true\"/>\n    <register class=\"org.nuxeo.ecm.platform.audit.io.LogEntryListJsonWriter\" enable=\"true\"/>\n    <register class=\"org.nuxeo.ecm.platform.audit.io.LogEntryCSVWriter\" enable=\"true\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.io.marshallers",
          "name": "org.nuxeo.ecm.platform.audit.io.marshallers",
          "requirements": [],
          "resolutionOrder": 295,
          "services": [],
          "startOrder": 293,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.audit.io.marshallers\" version=\"1.0.0\">\n  <documentation>\n    Core IO registered marshallers set.\n  </documentation>\n  <extension target=\"org.nuxeo.ecm.core.io.MarshallerRegistry\" point=\"marshallers\">\n    <!-- preview document enricher -->\n    <register class=\"org.nuxeo.ecm.platform.audit.io.LogEntryJsonWriter\" enable=\"true\" />\n    <register class=\"org.nuxeo.ecm.platform.audit.io.LogEntryListJsonWriter\" enable=\"true\" />\n    <register class=\"org.nuxeo.ecm.platform.audit.io.LogEntryCSVWriter\" enable=\"true\" />\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/marshallers-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentation": "Contribute the search event to the Audit configuration :\n    this is\n    only safe to do so when the ES backend if used for Audit\n  \n",
          "documentationHtml": "<p>\nContribute the search event to the Audit configuration :\nthis is\nonly safe to do so when the ES backend if used for Audit\n</p><p></p>",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--event",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.user.contrib/Contributions/org.nuxeo.ecm.platform.audit.user.contrib--event",
              "id": "org.nuxeo.ecm.platform.audit.user.contrib--event",
              "registrationOrder": 4,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
                "name": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"event\" target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\">\n    <event name=\"user_created\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\"/>\n      </extendedInfos>\n    </event>\n    <event name=\"user_deleted\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\"/>\n      </extendedInfos>\n    </event>\n    <event name=\"user_modified\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\"/>\n      </extendedInfos>\n    </event>\n    <event name=\"group_created\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\"/>\n      </extendedInfos>\n    </event>\n    <event name=\"group_deleted\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\"/>\n      </extendedInfos>\n    </event>\n    <event name=\"group_modified\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\"/>\n      </extendedInfos>\n    </event>\n    <event name=\"retentionActiveChanged\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.retentionActive}\" key=\"retentionActive\"/>\n      </extendedInfos>\n    </event>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.user.contrib",
          "name": "org.nuxeo.ecm.platform.audit.user.contrib",
          "requirements": [],
          "resolutionOrder": 296,
          "services": [],
          "startOrder": 297,
          "version": "10.10-HF33",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.platform.audit.user.contrib\" version=\"1.0\">\n\n  <documentation>Contribute the search event to the Audit configuration :\n    this is\n    only safe to do so when the ES backend if used for Audit\n  </documentation>\n\n  <extension target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\"\n    point=\"event\">\n    <event name=\"user_created\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\" />\n      </extendedInfos>\n    </event>\n    <event name=\"user_deleted\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\" />\n      </extendedInfos>\n    </event>\n    <event name=\"user_modified\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\" />\n      </extendedInfos>\n    </event>\n    <event name=\"group_created\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\" />\n      </extendedInfos>\n    </event>\n    <event name=\"group_deleted\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\" />\n      </extendedInfos>\n    </event>\n    <event name=\"group_modified\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.id}\" key=\"id\" />\n      </extendedInfos>\n    </event>\n    <event name=\"retentionActiveChanged\">\n      <extendedInfos>\n        <extendedInfo expression=\"${message.properties.retentionActive}\" key=\"retentionActive\" />\n      </extendedInfos>\n    </event>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/user-audit-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
          "declaredStartOrder": 51,
          "documentation": "\n    Service that deals with audit.\n    <p/>\n\n    Most of the work is done at EJB layer though.\n\n    This supports JMS events based\n    notifications on a dedicated topic.\n\n    @version 1.0\n    @author Julien Anguenot\n  \n",
          "documentationHtml": "<p>\nService that deals with audit.\n</p><p>\nMost of the work is done at EJB layer though.\n</p><p>\nThis supports JMS events based\nnotifications on a dedicated topic.\n</p><p>\n&#64;version 1.0\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "descriptors": [
                "org.nuxeo.ecm.platform.audit.service.extension.EventDescriptor"
              ],
              "documentation": "\n      This service registers auditable events.\n      <p/>\n\n      Registered events are dummy strings for now.\n      <p/>\n\n      This service is used to filter auditable events from the JMS topic based\n      on their names. The following XML snipset give figures out how the default\n      event types are selected for auditing.\n\n      <programlisting>\n    <extension point=\"event\" target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\">\n        <event name=\"documentCreated\"/>\n        <event name=\"documentCreatedByCopy\"/>\n        <event name=\"documentDuplicated\"/>\n        <event name=\"documentMoved\"/>\n        <event name=\"documentRemoved\"/>\n        <event name=\"documentModified\"/>\n        <event name=\"documentLocked\"/>\n        <event name=\"documentUnlocked\"/>\n        <event name=\"documentSecurityUpdated\"/>\n        <event name=\"lifecycle_transition_event\"/>\n        <event name=\"documentTrashed\"/>\n        <event name=\"documentUntrashed\"/>\n    </extension>\n</programlisting>\n",
              "documentationHtml": "<p>\nThis service registers auditable events.\n</p><p>\nRegistered events are dummy strings for now.\n</p><p>\nThis service is used to filter auditable events from the JMS topic based\non their names. The following XML snipset give figures out how the default\nevent types are selected for auditing.\n</p><p>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n</p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/ExtensionPoints/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--event",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--event",
              "label": "event (org.nuxeo.ecm.platform.audit.service.NXAuditEventsService)",
              "name": "event",
              "version": "10.10-HF33"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "descriptors": [
                "org.nuxeo.ecm.platform.audit.service.extension.ExtendedInfoDescriptor"
              ],
              "documentation": "\n      This service registered extended info mappings.\n\n      <p/>\n\n      This service is used to evaluate EL expression using document as context\n      regist:ering results into a map indexed by names.\n    \n",
              "documentationHtml": "<p>\nThis service registered extended info mappings.\n</p><p>\nThis service is used to evaluate EL expression using document as context\nregist:ering results into a map indexed by names.\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/ExtensionPoints/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--extendedInfo",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--extendedInfo",
              "label": "extendedInfo (org.nuxeo.ecm.platform.audit.service.NXAuditEventsService)",
              "name": "extendedInfo",
              "version": "10.10-HF33"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "descriptors": [
                "org.nuxeo.ecm.platform.audit.service.extension.AdapterDescriptor"
              ],
              "documentation": "\n      register the adapter that will be injected in EL context\n    \n",
              "documentationHtml": "<p>\nregister the adapter that will be injected in EL context\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/ExtensionPoints/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--adapter",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--adapter",
              "label": "adapter (org.nuxeo.ecm.platform.audit.service.NXAuditEventsService)",
              "name": "adapter",
              "version": "10.10-HF33"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "descriptors": [
                "org.nuxeo.ecm.platform.audit.service.extension.AuditBackendDescriptor"
              ],
              "documentation": "\n      Allows to register a backend implementation for the Audit Service\n    \n",
              "documentationHtml": "<p>\nAllows to register a backend implementation for the Audit Service\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/ExtensionPoints/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--backend",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--backend",
              "label": "backend (org.nuxeo.ecm.platform.audit.service.NXAuditEventsService)",
              "name": "backend",
              "version": "10.10-HF33"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "descriptors": [
                "org.nuxeo.ecm.platform.audit.service.extension.AuditStorageDescriptor"
              ],
              "documentation": "\n      Allows to register a storage implementation for the Audit Service\n    \n",
              "documentationHtml": "<p>\nAllows to register a storage implementation for the Audit Service\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/ExtensionPoints/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--storage",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--storage",
              "label": "storage (org.nuxeo.ecm.platform.audit.service.NXAuditEventsService)",
              "name": "storage",
              "version": "10.10-HF33"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "descriptors": [
                "org.nuxeo.ecm.platform.audit.service.extension.AuditBulkerDescriptor"
              ],
              "documentation": "\n       CAUTION: Deprecated since 10.10-HF33, audit bulker is now handled with nuxeo-stream, no replacement\n      Allows to configure bulk processing\n    \n",
              "documentationHtml": "<p>\nCAUTION: Deprecated since 10.10-HF33, audit bulker is now handled with nuxeo-stream, no replacement\nAllows to configure bulk processing\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/ExtensionPoints/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--bulk",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--bulk",
              "label": "bulk (org.nuxeo.ecm.platform.audit.service.NXAuditEventsService)",
              "name": "bulk",
              "version": "10.10-HF33"
            }
          ],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "\n      Those default auditable events match Nuxeo core base events.\n      <p/>\n\n      If you are sending new Nuxeo core events and want them audited, this is\n      the place to declare them NXAudit side.\n    \n",
              "documentationHtml": "<p>\nThose default auditable events match Nuxeo core base events.\n</p><p>\nIf you are sending new Nuxeo core events and want them audited, this is\nthe place to declare them NXAudit side.\n</p><p></p>",
              "extensionPoint": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--event",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Contributions/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--event",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--event",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
                "name": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"event\" target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\">\n    <documentation>\n      Those default auditable events match Nuxeo core base events.\n      <p/>\n      If you are sending new Nuxeo core events and want them audited, this is\n      the place to declare them NXAudit side.\n    </documentation>\n\n    <event name=\"documentCreated\"/>\n    <event name=\"documentCreatedByCopy\"/>\n    <event name=\"documentDuplicated\"/>\n    <event name=\"documentMoved\"/>\n    <event name=\"documentRemoved\"/>\n    <event name=\"documentModified\"/>\n    <event name=\"documentLocked\"/>\n    <event name=\"documentUnlocked\"/>\n    <event name=\"documentSecurityUpdated\"/>\n    <event name=\"retentionActiveChanged\"/>\n    <event name=\"lifecycle_transition_event\"/>\n    <event name=\"loginSuccess\"/>\n    <event name=\"loginFailed\"/>\n    <event name=\"logout\"/>\n    <event name=\"documentCheckedIn\"/>\n    <event name=\"versionRemoved\"/>\n    <event name=\"documentProxyPublished\"/>\n    <event name=\"sectionContentPublished\"/>\n    <event name=\"documentRestored\"/>\n    <event name=\"download\"/>\n    <event name=\"documentTrashed\"/>\n    <event name=\"documentUntrashed\"/>\n    <event name=\"addedToCollection\"/>\n    <event name=\"removedFromCollection\"/>\n    <event name=\"afterMakeRecord\"/>\n    <event name=\"afterSetRetention\"/>\n    <event name=\"afterExtendRetention\"/>\n    <event name=\"retentionExpired\"/>\n    <event name=\"afterSetLegalHold\"/>\n    <event name=\"afterRemoveLegalHold\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--backend",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Contributions/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--backend",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--backend",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
                "name": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"backend\" target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\">\n\n    <backend class=\"org.nuxeo.ecm.platform.audit.service.DefaultAuditBackend\">\n       <require>org.nuxeo.ecm.core.persistence.PersistenceComponent</require>\n    </backend>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.event.EventServiceComponent--listener",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Contributions/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--listener",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--listener",
              "registrationOrder": 45,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.event.EventServiceComponent",
                "name": "org.nuxeo.ecm.core.event.EventServiceComponent",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"listener\" target=\"org.nuxeo.ecm.core.event.EventServiceComponent\">\n    <listener async=\"false\" class=\"org.nuxeo.ecm.platform.audit.listener.StreamAuditEventListener\" name=\"auditLoggerListener\" postCommit=\"false\" priority=\"500\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.runtime.stream.service--logConfig",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Contributions/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--logConfig",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--logConfig",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.stream.service",
                "name": "org.nuxeo.runtime.stream.service",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"logConfig\" target=\"org.nuxeo.runtime.stream.service\">\n    <logConfig name=\"audit\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.runtime.stream.service--streamProcessor",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Contributions/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--streamProcessor",
              "id": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--streamProcessor",
              "registrationOrder": 3,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.stream.service",
                "name": "org.nuxeo.runtime.stream.service",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"streamProcessor\" target=\"org.nuxeo.runtime.stream.service\">\n    <streamProcessor class=\"org.nuxeo.ecm.platform.audit.impl.StreamAuditWriter\" defaultCodec=\"legacy\" defaultConcurrency=\"1\" defaultPartitions=\"1\" enabled=\"true\" logConfig=\"audit\" name=\"auditLogWriter\">\n      <policy batchCapacity=\"25\" batchThreshold=\"500ms\" continueOnFailure=\"false\" delay=\"1s\" maxDelay=\"60s\" maxRetries=\"20\" name=\"AuditLogWriter\"/>\n    </streamProcessor>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
          "name": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
          "requirements": [
            "org.nuxeo.ecm.platform.audit.service.persistence",
            "org.nuxeo.runtime.metrics.MetricsService"
          ],
          "resolutionOrder": 835,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Services/org.nuxeo.ecm.platform.audit.service.AuditBackend",
              "id": "org.nuxeo.ecm.platform.audit.service.AuditBackend",
              "overriden": false,
              "version": "10.10-HF33"
            },
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Services/org.nuxeo.ecm.platform.audit.api.AuditReader",
              "id": "org.nuxeo.ecm.platform.audit.api.AuditReader",
              "overriden": false,
              "version": "10.10-HF33"
            },
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Services/org.nuxeo.ecm.platform.audit.api.AuditLogger",
              "id": "org.nuxeo.ecm.platform.audit.api.AuditLogger",
              "overriden": false,
              "version": "10.10-HF33"
            },
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Services/org.nuxeo.ecm.platform.audit.api.Logs",
              "id": "org.nuxeo.ecm.platform.audit.api.Logs",
              "overriden": false,
              "version": "10.10-HF33"
            },
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit.service.NXAuditEventsService/Services/org.nuxeo.ecm.platform.audit.api.DocumentHistoryReader",
              "id": "org.nuxeo.ecm.platform.audit.api.DocumentHistoryReader",
              "overriden": false,
              "version": "10.10-HF33"
            }
          ],
          "startOrder": 808,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<component name=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\">\n\n  <require>org.nuxeo.runtime.metrics.MetricsService</require>\n\n  <documentation>\n    Service that deals with audit.\n    <p />\n    Most of the work is done at EJB layer though.\n\n    This supports JMS events based\n    notifications on a dedicated topic.\n\n    @version 1.0\n    @author Julien Anguenot\n  </documentation>\n\n  <!-- needed so that activation has access to persistence -->\n  <require>org.nuxeo.ecm.platform.audit.service.persistence</require>\n\n  <implementation class=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.ecm.platform.audit.service.AuditBackend\"/>\n    <provide interface=\"org.nuxeo.ecm.platform.audit.api.AuditReader\" />\n    <provide interface=\"org.nuxeo.ecm.platform.audit.api.AuditLogger\" />\n    <provide interface=\"org.nuxeo.ecm.platform.audit.api.Logs\" />\n    <provide interface=\"org.nuxeo.ecm.platform.audit.api.DocumentHistoryReader\" />\n  </service>\n\n  <extension-point name=\"event\">\n    <documentation>\n      This service registers auditable events.\n      <p />\n      Registered events are dummy strings for now.\n      <p />\n      This service is used to filter auditable events from the JMS topic based\n      on their names. The following XML snipset give figures out how the default\n      event types are selected for auditing.\n\n      <programlisting>\n        <extension target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\"\n          point=\"event\">\n          <event name=\"documentCreated\" />\n          <event name=\"documentCreatedByCopy\" />\n          <event name=\"documentDuplicated\" />\n          <event name=\"documentMoved\" />\n          <event name=\"documentRemoved\" />\n          <event name=\"documentModified\" />\n          <event name=\"documentLocked\" />\n          <event name=\"documentUnlocked\" />\n          <event name=\"documentSecurityUpdated\" />\n          <event name=\"lifecycle_transition_event\" />\n          <event name=\"documentTrashed\" />\n          <event name=\"documentUntrashed\" />\n        </extension>\n      </programlisting>\n    </documentation>\n\n    <object class=\"org.nuxeo.ecm.platform.audit.service.extension.EventDescriptor\" />\n\n  </extension-point>\n\n  <extension-point name=\"extendedInfo\">\n\n    <documentation>\n      This service registered extended info mappings.\n\n      <p />\n      This service is used to evaluate EL expression using document as context\n      regist:ering results into a map indexed by names.\n    </documentation>\n\n    <object\n      class=\"org.nuxeo.ecm.platform.audit.service.extension.ExtendedInfoDescriptor\" />\n  </extension-point>\n\n  <extension-point name=\"adapter\">\n\n    <documentation>\n      register the adapter that will be injected in EL context\n    </documentation>\n\n    <object class=\"org.nuxeo.ecm.platform.audit.service.extension.AdapterDescriptor\" />\n  </extension-point>\n\n  <extension-point name=\"backend\">\n\n    <documentation>\n      Allows to register a backend implementation for the Audit Service\n    </documentation>\n\n    <object class=\"org.nuxeo.ecm.platform.audit.service.extension.AuditBackendDescriptor\" />\n  </extension-point>\n\n  <extension-point name=\"storage\">\n\n    <documentation>\n      Allows to register a storage implementation for the Audit Service\n    </documentation>\n\n    <object class=\"org.nuxeo.ecm.platform.audit.service.extension.AuditStorageDescriptor\" />\n  </extension-point>\n\n  <extension-point name=\"bulk\">\n     <documentation>\n       CAUTION: Deprecated since 10.10-HF33, audit bulker is now handled with nuxeo-stream, no replacement\n      Allows to configure bulk processing\n    </documentation>\n\n    <object class=\"org.nuxeo.ecm.platform.audit.service.extension.AuditBulkerDescriptor\"/>\n  </extension-point>\n\n  <extension target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\"\n    point=\"event\">\n    <documentation>\n      Those default auditable events match Nuxeo core base events.\n      <p />\n      If you are sending new Nuxeo core events and want them audited, this is\n      the place to declare them NXAudit side.\n    </documentation>\n\n    <event name=\"documentCreated\" />\n    <event name=\"documentCreatedByCopy\" />\n    <event name=\"documentDuplicated\" />\n    <event name=\"documentMoved\" />\n    <event name=\"documentRemoved\" />\n    <event name=\"documentModified\" />\n    <event name=\"documentLocked\" />\n    <event name=\"documentUnlocked\" />\n    <event name=\"documentSecurityUpdated\" />\n    <event name=\"retentionActiveChanged\" />\n    <event name=\"lifecycle_transition_event\" />\n    <event name=\"loginSuccess\" />\n    <event name=\"loginFailed\" />\n    <event name=\"logout\" />\n    <event name=\"documentCheckedIn\" />\n    <event name=\"versionRemoved\" />\n    <event name=\"documentProxyPublished\" />\n    <event name=\"sectionContentPublished\" />\n    <event name=\"documentRestored\" />\n    <event name=\"download\" />\n    <event name=\"documentTrashed\" />\n    <event name=\"documentUntrashed\" />\n    <event name=\"addedToCollection\" />\n    <event name=\"removedFromCollection\" />\n    <event name=\"afterMakeRecord\" />\n    <event name=\"afterSetRetention\" />\n    <event name=\"afterExtendRetention\" />\n    <event name=\"retentionExpired\" />\n    <event name=\"afterSetLegalHold\" />\n    <event name=\"afterRemoveLegalHold\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\"\n    point=\"backend\">\n\n    <backend class=\"org.nuxeo.ecm.platform.audit.service.DefaultAuditBackend\">\n       <require>org.nuxeo.ecm.core.persistence.PersistenceComponent</require>\n    </backend>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.event.EventServiceComponent\" point=\"listener\">\n    <listener name=\"auditLoggerListener\" async=\"false\" postCommit=\"false\" priority=\"500\"\n              class=\"org.nuxeo.ecm.platform.audit.listener.StreamAuditEventListener\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.runtime.stream.service\" point=\"logConfig\">\n    <logConfig name=\"${nuxeo.stream.audit.log.config:=audit}\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.runtime.stream.service\" point=\"streamProcessor\">\n    <streamProcessor name=\"auditLogWriter\" logConfig=\"${nuxeo.stream.audit.log.config:=audit}\"\n                     defaultConcurrency=\"1\" defaultPartitions=\"1\" defaultCodec=\"${nuxeo.stream.audit.log.codec:=legacy}\"\n                     class=\"org.nuxeo.ecm.platform.audit.impl.StreamAuditWriter\"\n                     enabled=\"${nuxeo.stream.audit.enabled:=true}\">\n      <policy name=\"AuditLogWriter\" batchCapacity=\"${nuxeo.stream.audit.batch.size:=10}\"\n              batchThreshold=\"${nuxeo.stream.audit.batch.threshold.ms:=50}ms\"\n              maxRetries=\"20\" delay=\"1s\" maxDelay=\"60s\" continueOnFailure=\"false\" />\n    </streamProcessor>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nxaudit-service.xml",
          "xmlPureComponent": false
        }
      ],
      "fileName": "nuxeo-platform-audit-core-10.10-HF33.jar",
      "groupId": "org.nuxeo.ecm.platform",
      "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.audit/org.nuxeo.ecm.platform.audit",
      "id": "org.nuxeo.ecm.platform.audit",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: 1.6.0_20 (Sun Microsystems Inc.)\r\nBuilt-By: jenkins\r\nBuild-Jdk: 1.8.0_265\r\nBundle-ManifestVersion: 2\r\nBundle-Version: 0.0.0.SNAPSHOT\r\nBundle-SymbolicName: org.nuxeo.ecm.platform.audit\r\nBundle-Category: web,stateful\r\nBundle-ActivationPolicy: lazy\r\nBundle-RequiredExecutionEnvironment: JavaSE-1.6\r\nBundle-Vendor: Nuxeo\r\nImport-Package: de.odysseus.el;version=\"2.1.2\",javax.annotation;versio\r\n n=\"1.0\",javax.el,javax.management,javax.persistence,org.apache.common\r\n s.lang.builder,org.apache.commons.logging,org.nuxeo.common.xmap.annot\r\n ation,org.nuxeo.ecm.core;api=split,org.nuxeo.ecm.core.api;api=split,o\r\n rg.nuxeo.ecm.core.api.event,org.nuxeo.ecm.core.api.repository,org.nux\r\n eo.ecm.core.api.security,org.nuxeo.ecm.core.event,org.nuxeo.ecm.core.\r\n event.impl,org.nuxeo.ecm.core.persistence,org.nuxeo.ecm.directory;api\r\n =split,org.nuxeo.ecm.platform.audit.api,org.nuxeo.ecm.platform.audit.\r\n api.query,org.nuxeo.ecm.platform.el,org.nuxeo.runtime.api,org.nuxeo.r\r\n untime.management,org.nuxeo.runtime.model,org.osgi.framework;version=\r\n \"1.5.0\"\r\nNuxeo-Component: OSGI-INF/nxaudit-service.xml,OSGI-INF/nxaudit-persist\r\n ence-config.xml,OSGI-INF/core-type-contrib.xml,OSGI-INF/directories-c\r\n ontrib.xml,OSGI-INF/pageprovider-contrib.xml,OSGI-INF/marshallers-con\r\n trib.xml, OSGI-INF/user-audit-contrib.xml\r\nExport-Package: org.nuxeo.ecm.platform.audit.listener,org.nuxeo.ecm.pl\r\n atform.audit.service,org.nuxeo.ecm.platform.audit.service.extension,o\r\n rg.nuxeo.ecm.platform.audit.service.management\r\nBundle-Name: NXAudit Core\r\nBundle-ClassPath: .\r\nBundle-Localization: plugin\r\nPrivate-Package: .\r\n\r\n",
      "maxResolutionOrder": 835,
      "minResolutionOrder": 290,
      "packages": [
        "nuxeo-10.10-HF01",
        "nuxeo-10.10-HF02",
        "nuxeo-10.10-HF03",
        "nuxeo-10.10-HF04",
        "nuxeo-10.10-HF05",
        "nuxeo-10.10-HF06",
        "nuxeo-10.10-HF07",
        "nuxeo-10.10-HF08",
        "nuxeo-10.10-HF09",
        "nuxeo-10.10-HF10",
        "nuxeo-10.10-HF11",
        "nuxeo-10.10-HF12",
        "nuxeo-10.10-HF13",
        "nuxeo-10.10-HF14",
        "nuxeo-10.10-HF15",
        "nuxeo-10.10-HF16",
        "nuxeo-10.10-HF17",
        "nuxeo-10.10-HF18",
        "nuxeo-10.10-HF19",
        "nuxeo-10.10-HF20",
        "nuxeo-10.10-HF21",
        "nuxeo-10.10-HF22",
        "nuxeo-10.10-HF23",
        "nuxeo-10.10-HF24",
        "nuxeo-10.10-HF25",
        "nuxeo-10.10-HF26",
        "nuxeo-10.10-HF27",
        "nuxeo-10.10-HF28",
        "nuxeo-10.10-HF29",
        "nuxeo-10.10-HF30",
        "nuxeo-10.10-HF31",
        "nuxeo-10.10-HF32",
        "nuxeo-10.10-HF33"
      ],
      "requirements": [],
      "version": "10.10-HF33"
    },
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-web-ui",
      "artifactVersion": "10.10-HF33",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.web.ui",
          "org.nuxeo.web.ui.drive",
          "org.nuxeo.web.ui.easyshare"
        ],
        "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web",
        "id": "grp:org.nuxeo.web",
        "name": "org.nuxeo.web",
        "parentIds": [
          "grp:org.nuxeo.web.ui"
        ],
        "readmes": [
          {
            "blobProviderId": "default",
            "content": "# Nuxeo Drive Server\n\nAddon needed for [Nuxeo Drive](https://github.com/nuxeo/nuxeo-drive) to work against a Nuxeo Platform instance.\n\n# Building\n\n    mvn clean install\n\n## Deploying\n\nInstall [the Nuxeo Drive Marketplace Package](https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-drive).\nOr manually copy the built artifacts into `$NUXEO_HOME/templates/custom/bundles/` and activate the \"custom\" template.\n\nYou should then have the 'Nuxeo Drive' tab in your Home allowing you to download the Nuxeo Drive client for your favorite OS :-)\n\n## QA results\n\n| Nuxeo QA Job | Status |\n|-----|--------|\n| Build Status | [![Build Status](https://qa.nuxeo.org/jenkins/job/master/job/addons_nuxeo-drive-server-master/badge/icon)](https://qa.nuxeo.org/jenkins/job/master/job/addons_nuxeo-drive-server-master/) |\n| Build Multi-DB | [![Build Multi-DB](https://qa.nuxeo.org/jenkins/job/master/job/addons_nuxeo-drive-server-master-multidb/badge/icon)](https://qa.nuxeo.org/jenkins/job/master/job/addons_nuxeo-drive-server-master-multidb) |\n\n# About Nuxeo\n\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
            "digest": "dd6f47d8da7a0fa3605f1935a942caf4",
            "encoding": "UTF-8",
            "length": 1712,
            "mimeType": "text/plain",
            "name": "README.md"
          },
          {
            "blobProviderId": "default",
            "content": "\n#EasyShare\n\n## About EasyShare\nThe EasyShare package is an addon for the Nuxeo platform to enable sharing files from the repository with external users not requiring a login. You can specify a set of files to be accessed by a specific unique URL which allows anonymous download of either files within the share or proxies from anywhere else in your repository through a special folder listing page. You can also set an expiration date for sharing availability and track all downloads and get notifications.\n\nThis project is an on-going project, supported by Nuxeo\n\n## Deploying\nEasyShare is available as a package add-on [from the Nuxeo Marketplace] https://connect.nuxeo.com/nuxeo/site/marketplace/package/easyshare\n\n## Resources\n### Documentation\nThe documentation for EasyShare is available in our Documentation Center: http://doc.nuxeo.com/x/rooZAQ\n\n### Following Project QA Status\n\n[![Build Status](https://qa.nuxeo.org/jenkins/buildStatus/icon?job=addons_nuxeo-easyshare-master)](https://qa.nuxeo.org/jenkins/job/addons_nuxeo-easyshare-master/)\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes an EasyShare component:\nhttps://jira.nuxeo.com/browse/NXP/component/14003\n\nYou can report issues on: http://answers.nuxeo.com\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Netflix, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
            "digest": "8348c059f1deecffbe4b8bc0ce482018",
            "encoding": "UTF-8",
            "length": 1986,
            "mimeType": "text/plain",
            "name": "README.md"
          }
        ],
        "version": "10.10"
      },
      "bundleId": "org.nuxeo.web.ui",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService--startURL",
              "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.authentication.contrib/Contributions/org.nuxeo.web.ui.authentication.contrib--startURL",
              "id": "org.nuxeo.web.ui.authentication.contrib--startURL",
              "registrationOrder": 13,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService",
                "name": "org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"startURL\" target=\"org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService\">\n    <startURLPattern>\n      <patterns>\n        <pattern>ui</pattern>\n        <pattern>repo</pattern>\n      </patterns>\n    </startURLPattern>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.authentication.contrib",
          "name": "org.nuxeo.web.ui.authentication.contrib",
          "requirements": [],
          "resolutionOrder": 951,
          "services": [],
          "startOrder": 797,
          "version": "10.10-HF33",
          "xmlFileContent": "<component name=\"org.nuxeo.web.ui.authentication.contrib\">\n  <extension point=\"startURL\" target=\"org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService\">\n    <startURLPattern>\n      <patterns>\n        <pattern>ui</pattern>\n        <pattern>repo</pattern>\n      </patterns>\n    </startURLPattern>\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/auth-config.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.actions.ActionService--actions",
              "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.actions/Contributions/org.nuxeo.web.ui.actions--actions",
              "id": "org.nuxeo.web.ui.actions--actions",
              "registrationOrder": 73,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.actions.ActionService",
                "name": "org.nuxeo.ecm.platform.actions.ActionService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"actions\" target=\"org.nuxeo.ecm.platform.actions.ActionService\">\n\n    <action id=\"webui\" label=\"WEBUI\" link=\"ui\" order=\"90\" type=\"bare_link\">\n      <category>MAIN_TABS</category>\n    </action>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.actions",
          "name": "org.nuxeo.web.ui.actions",
          "requirements": [],
          "resolutionOrder": 952,
          "services": [],
          "startOrder": 796,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<component name=\"org.nuxeo.web.ui.actions\">\n\n  <extension target=\"org.nuxeo.ecm.platform.actions.ActionService\"\n    point=\"actions\">\n\n    <action id=\"webui\" link=\"ui\" label=\"WEBUI\" order=\"90\" type=\"bare_link\">\n      <category>MAIN_TABS</category>\n    </action>\n\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/actions-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService--loginScreen",
              "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.login.startup.page.web.contrib/Contributions/org.nuxeo.login.startup.page.web.contrib--loginScreen",
              "id": "org.nuxeo.login.startup.page.web.contrib--loginScreen",
              "registrationOrder": 3,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService",
                "name": "org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"loginScreen\" target=\"org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService\">\n    <loginScreenConfig>\n      <startupPages>\n        <startupPage id=\"web\" priority=\"100\">\n          <path>ui/</path>\n        </startupPage>\n      </startupPages>\n    </loginScreenConfig>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.login.startup.page.web.contrib",
          "name": "org.nuxeo.login.startup.page.web.contrib",
          "requirements": [],
          "resolutionOrder": 953,
          "services": [],
          "startOrder": 724,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.login.startup.page.web.contrib\">\n\n  <extension target=\"org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService\" point=\"loginScreen\">\n    <loginScreenConfig>\n      <startupPages>\n        <startupPage id=\"web\" priority=\"100\">\n          <path>ui/</path>\n        </startupPage>\n      </startupPages>\n    </loginScreenConfig>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/login-startup-page-web-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.WebResources--resources",
              "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.resources/Contributions/org.nuxeo.web.ui.resources--resources",
              "id": "org.nuxeo.web.ui.resources--resources",
              "registrationOrder": 23,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.WebResources",
                "name": "org.nuxeo.ecm.platform.WebResources",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"resources\" target=\"org.nuxeo.ecm.platform.WebResources\">\n\n    <resource name=\"nuxeo-app.html\" type=\"import\">\n      <uri>/ui/nuxeo-app.html</uri>\n    </resource>\n\n    <resource name=\"nuxeo-web-ui-bundle.html\" type=\"import\">\n      <uri>/ui/nuxeo-web-ui-bundle.html</uri>\n    </resource>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.WebResources--bundles",
              "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.resources/Contributions/org.nuxeo.web.ui.resources--bundles",
              "id": "org.nuxeo.web.ui.resources--bundles",
              "registrationOrder": 16,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.WebResources",
                "name": "org.nuxeo.ecm.platform.WebResources",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"bundles\" target=\"org.nuxeo.ecm.platform.WebResources\">\n\n    <!-- main bundle with all import resources -->\n    <bundle name=\"web-ui\">\n      <resources>\n        <resource>nuxeo-app.html</resource>\n        <resource>nuxeo-web-ui-bundle.html</resource>\n      </resources>\n    </bundle>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.resources",
          "name": "org.nuxeo.web.ui.resources",
          "requirements": [],
          "resolutionOrder": 954,
          "services": [],
          "startOrder": 800,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\n<component name=\"org.nuxeo.web.ui.resources\">\n\n  <extension target=\"org.nuxeo.ecm.platform.WebResources\" point=\"resources\">\n\n    <resource name=\"nuxeo-app.html\" type=\"import\">\n      <uri>/ui/nuxeo-app.html</uri>\n    </resource>\n\n    <resource name=\"nuxeo-web-ui-bundle.html\" type=\"import\">\n      <uri>/ui/nuxeo-web-ui-bundle.html</uri>\n    </resource>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.platform.WebResources\" point=\"bundles\">\n\n    <!-- main bundle with all import resources -->\n    <bundle name=\"web-ui\">\n      <resources>\n        <resource>nuxeo-app.html</resource>\n        <resource>nuxeo-web-ui-bundle.html</resource>\n      </resources>\n    </bundle>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/webresources-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.url.service.DocumentViewCodecService--codecs",
              "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.url.codec.web.contribs/Contributions/org.nuxeo.url.codec.web.contribs--codecs",
              "id": "org.nuxeo.url.codec.web.contribs--codecs",
              "registrationOrder": 12,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.url.service.DocumentViewCodecService",
                "name": "org.nuxeo.ecm.platform.url.service.DocumentViewCodecService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"codecs\" target=\"org.nuxeo.ecm.platform.url.service.DocumentViewCodecService\">\n    <documentViewCodec class=\"org.nuxeo.web.ui.url.codec.WebNotificationDocumentIdCodec\" enabled=\"true\" name=\"notificationDocId\" prefix=\"doc\" priority=\"100\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.url.codec.web.contribs",
          "name": "org.nuxeo.url.codec.web.contribs",
          "requirements": [],
          "resolutionOrder": 967,
          "services": [],
          "startOrder": 789,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.url.codec.web.contribs\">\n\n  <extension target=\"org.nuxeo.ecm.platform.url.service.DocumentViewCodecService\" point=\"codecs\">\n    <documentViewCodec name=\"notificationDocId\" enabled=\"true\" prefix=\"doc\" priority=\"100\"\n      class=\"org.nuxeo.web.ui.url.codec.WebNotificationDocumentIdCodec\" />\n  </extension>\n\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/url-codecs-web-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.web.common.requestcontroller.service.RequestControllerService--filterConfig",
              "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.request.contrib/Contributions/org.nuxeo.web.ui.request.contrib--filterConfig",
              "id": "org.nuxeo.web.ui.request.contrib--filterConfig",
              "registrationOrder": 5,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.web.common.requestcontroller.service.RequestControllerService",
                "name": "org.nuxeo.ecm.platform.web.common.requestcontroller.service.RequestControllerService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"filterConfig\" target=\"org.nuxeo.ecm.platform.web.common.requestcontroller.service.RequestControllerService\">\n    <filterConfig cacheTime=\"31536000\" cached=\"true\" name=\"cached_ui_static\">\n      <!-- if url contains a timestamp param: approximately one year -->\n      <pattern>/nuxeo/ui/.*\\\\?.*ts=.+</pattern>\n    </filterConfig>\n    <filterConfig cacheTime=\"86400\" cached=\"true\" name=\"ui_static\">\n      <!-- For other web ui resources: trade off between agressive caching and HF applying within 24 hours -->\n      <!-- Exclude JS and HTML files due to: https://jira.nuxeo.com/browse/NXP-25595 -->\n      <pattern>/nuxeo/ui/.*\\.(?!(html|js)$).*</pattern>\n    </filterConfig>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.request.contrib",
          "name": "org.nuxeo.web.ui.request.contrib",
          "requirements": [
            "org.nuxeo.ecm.platform.web.common.requestcontroller.service.RequestControllerService.defaultContrib"
          ],
          "resolutionOrder": 968,
          "services": [],
          "startOrder": 799,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.web.ui.request.contrib\">\n\n  <require>org.nuxeo.ecm.platform.web.common.requestcontroller.service.RequestControllerService.defaultContrib</require>\n\n  <extension target=\"org.nuxeo.ecm.platform.web.common.requestcontroller.service.RequestControllerService\"\n    point=\"filterConfig\">\n    <filterConfig name=\"cached_ui_static\" cached=\"true\" cacheTime=\"31536000\">\n      <!-- if url contains a timestamp param: approximately one year -->\n      <pattern>${org.nuxeo.ecm.contextPath}/ui/.*\\\\?.*ts=.+</pattern>\n    </filterConfig>\n    <filterConfig name=\"ui_static\" cached=\"true\" cacheTime=\"86400\">\n      <!-- For other web ui resources: trade off between agressive caching and HF applying within 24 hours -->\n      <!-- Exclude JS and HTML files due to: https://jira.nuxeo.com/browse/NXP-25595 -->\n      <pattern>${org.nuxeo.ecm.contextPath}/ui/.*\\.(?!(html|js)$).*</pattern>\n    </filterConfig>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/browser-cache-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.runtime.ConfigurationService--configuration",
              "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.properties.contrib/Contributions/org.nuxeo.web.ui.properties.contrib--configuration",
              "id": "org.nuxeo.web.ui.properties.contrib--configuration",
              "registrationOrder": 55,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.ConfigurationService",
                "name": "org.nuxeo.runtime.ConfigurationService",
                "type": "service"
              },
              "version": "10.10-HF33",
              "xml": "<extension point=\"configuration\" target=\"org.nuxeo.runtime.ConfigurationService\">\n    <!-- enrichers -->\n    <property list=\"true\" name=\"org.nuxeo.web.ui.enrichers.document\">hasContent</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">firstAccessibleAncestor</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">permissions</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">breadcrumb</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">preview</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">favorites</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">subscribedNotifications</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">thumbnail</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">renditions</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">pendingTasks</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">runnableWorkflows</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">runningWorkflows</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">collections</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">audit</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">subtypes</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">tags</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">publications</property>\n    <property list=\"true\" name=\"org.nuxeo.web.ui.enrichers.blob\">appLinks</property>\n\n    <!-- Properties to be fetched when loading current document, default is 'properties' meaning all -->\n    <property list=\"true\" name=\"org.nuxeo.web.ui.fetch.document\">properties</property>\n\n    <!-- Date (time) format -->\n    <property name=\"org.nuxeo.web.ui.dateFormat\">LL</property>\n    <property name=\"org.nuxeo.web.ui.dateTimeFormat\">LLL</property>\n\n    <!-- First Day Of Week -->\n    <property name=\"org.nuxeo.web.ui.firstDayOfWeek\"/>\n\n    <!-- Comments only on doc with 'Commentable' facet ? -->\n    <property name=\"org.nuxeo.web.ui.enforceCommentable\">false</property>\n\n    <!-- Is pagination on for tasks endpoint ? -->\n    <property name=\"org.nuxeo.web.ui.taskEndpoint.isPaginated\">false</property>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui/org.nuxeo.web.ui.properties.contrib",
          "name": "org.nuxeo.web.ui.properties.contrib",
          "requirements": [],
          "resolutionOrder": 969,
          "services": [],
          "startOrder": 798,
          "version": "10.10-HF33",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.web.ui.properties.contrib\">\n  <extension target=\"org.nuxeo.runtime.ConfigurationService\" point=\"configuration\">\n    <!-- enrichers -->\n    <property name=\"org.nuxeo.web.ui.enrichers.document\" list=\"true\">hasContent</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">firstAccessibleAncestor</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">permissions</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">breadcrumb</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">preview</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">favorites</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">subscribedNotifications</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">thumbnail</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">renditions</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">pendingTasks</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">runnableWorkflows</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">runningWorkflows</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">collections</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">audit</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">subtypes</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">tags</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.document\">publications</property>\n    <property name=\"org.nuxeo.web.ui.enrichers.blob\" list=\"true\">appLinks</property>\n\n    <!-- Properties to be fetched when loading current document, default is 'properties' meaning all -->\n    <property name=\"org.nuxeo.web.ui.fetch.document\" list=\"true\">properties</property>\n\n    <!-- Date (time) format -->\n    <property name=\"org.nuxeo.web.ui.dateFormat\">LL</property>\n    <property name=\"org.nuxeo.web.ui.dateTimeFormat\">LLL</property>\n\n    <!-- First Day Of Week -->\n    <property name=\"org.nuxeo.web.ui.firstDayOfWeek\"></property>\n\n    <!-- Comments only on doc with 'Commentable' facet ? -->\n    <property name=\"org.nuxeo.web.ui.enforceCommentable\">false</property>\n\n    <!-- Is pagination on for tasks endpoint ? -->\n    <property name=\"org.nuxeo.web.ui.taskEndpoint.isPaginated\">false</property>\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/web-ui-properties.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-web-ui-10.10-HF33.jar",
      "groupId": "org.nuxeo.web.ui",
      "hierarchyPath": "/grp:org.nuxeo.web.ui/grp:org.nuxeo.web/org.nuxeo.web.ui",
      "id": "org.nuxeo.web.ui",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: jenkins\r\nBuild-Jdk: 1.8.0_265\r\nBundle-ManifestVersion: 1\r\nBundle-Version: 0.0.1\r\nBundle-Vendor: Nuxeo\r\nNuxeo-RequiredBy: org.nuxeo.ecm.war\r\nBundle-Name: Nuxeo Web UI\r\nBundle-SymbolicName: org.nuxeo.web.ui;singleton:=true\r\nNuxeo-Component: OSGI-INF/auth-config.xml, OSGI-INF/actions-contrib.xm\r\n l, OSGI-INF/login-startup-page-web-contrib.xml OSGI-INF/webresources-\r\n contrib.xml, OSGI-INF/url-codecs-web-contrib.xml, OSGI-INF/browser-ca\r\n che-contrib.xml, OSGI-INF/web-ui-properties.xml\r\n\r\n",
      "maxResolutionOrder": 969,
      "minResolutionOrder": 951,
      "packages": [
        "nuxeo-10.10-HF01",
        "nuxeo-10.10-HF02",
        "nuxeo-10.10-HF03",
        "nuxeo-10.10-HF04",
        "nuxeo-10.10-HF05",
        "nuxeo-10.10-HF06",
        "nuxeo-10.10-HF07",
        "nuxeo-10.10-HF08",
        "nuxeo-10.10-HF09",
        "nuxeo-10.10-HF10",
        "nuxeo-10.10-HF11",
        "nuxeo-10.10-HF12",
        "nuxeo-10.10-HF13",
        "nuxeo-10.10-HF13",
        "nuxeo-10.10-HF14",
        "nuxeo-10.10-HF15",
        "nuxeo-10.10-HF16",
        "nuxeo-10.10-HF17",
        "nuxeo-10.10-HF18",
        "nuxeo-10.10-HF19",
        "nuxeo-10.10-HF20",
        "nuxeo-10.10-HF21",
        "nuxeo-10.10-HF22",
        "nuxeo-10.10-HF23",
        "nuxeo-10.10-HF24",
        "nuxeo-10.10-HF25",
        "nuxeo-10.10-HF26",
        "nuxeo-10.10-HF27",
        "nuxeo-10.10-HF28",
        "nuxeo-10.10-HF29",
        "nuxeo-10.10-HF30",
        "nuxeo-10.10-HF31",
        "nuxeo-10.10-HF32",
        "nuxeo-10.10-HF33",
        "nuxeo-web-ui"
      ],
      "readme": {
        "blobProviderId": "default",
        "content": "[![Build Status](https://qa.nuxeo.org/jenkins/buildStatus/icon?job=master/addons_nuxeo-web-ui-master)](https://qa.nuxeo.org/jenkins/job/master/job/addons_nuxeo-web-ui-master/)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/5d8cd2a3c56745ecaae7e7f92a683ea7)](https://www.codacy.com/app/Nuxeo/nuxeo-web-ui)\n\n## Nuxeo Web UI\n\n### About\nNuxeo Web UI is a standard base web application for Nuxeo Platform. It is highly customizable and scalable, developed with [Polymer](https://polymer-library.polymer-project.org/) and leveraging [nuxeo-elements](https://github.com/nuxeo/nuxeo-elements), our library of custom elements.\n\n## Getting Started\n\n### Install dependencies\n\n```sh\nnpm install -g gulp bower && npm install && bower install\n```\n\n### Development workflow\n\n#### Serve / watch\n\n```sh\ngulp serve\n```\n\nThis outputs an IP address you can use to locally test and another that can be used on devices connected to your network.\n\n#### Run tests\n\n```sh\ngulp test:local\n```\n\nThis runs the unit tests defined in the `app/test` directory through [web-component-tester](https://github.com/Polymer/web-component-tester).\n\n#### Build & Vulcanize\n\n```sh\ngulp\n```\n\nBuild and optimize the current project, ready for deployment. This includes linting as well as vulcanization, image, script, stylesheet and HTML optimization and minification.\n\n## License\n\n[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html) \n\n(C) Copyright Nuxeo Corp. (http://nuxeo.com/)\n\nAll images, icons, fonts, and videos contained in this folder are copyrighted by Nuxeo, all rights reserved.\n\n## About Nuxeo\n\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
        "digest": "a45facbc87a9bd4b47ad95007eb0aaaa",
        "encoding": "UTF-8",
        "length": 2266,
        "mimeType": "text/plain",
        "name": "README.md"
      },
      "requirements": [],
      "version": "10.10-HF33"
    },
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-core-storage-mem",
      "artifactVersion": "10.10-HF25",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.ecm.core.storage",
          "org.nuxeo.ecm.core.storage.dbs",
          "org.nuxeo.ecm.core.storage.mem",
          "org.nuxeo.ecm.core.storage.mongodb",
          "org.nuxeo.ecm.core.storage.sql",
          "org.nuxeo.ecm.core.storage.sql.management"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage",
        "id": "grp:org.nuxeo.ecm.core.storage",
        "name": "org.nuxeo.ecm.core.storage",
        "parentIds": [
          "grp:org.nuxeo.ecm.core"
        ],
        "readmes": [],
        "version": "10.10"
      },
      "bundleId": "org.nuxeo.ecm.core.storage.mem",
      "components": [
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.storage.mem.MemRepositoryService",
          "documentation": "\n    Manages Memory repositories.\n  \n",
          "documentationHtml": "<p>\nManages Memory repositories.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.storage.mem.MemRepositoryService",
              "descriptors": [
                "org.nuxeo.ecm.core.storage.mem.MemRepositoryDescriptor"
              ],
              "documentation": "\n      Extension points to register Memory repositories. Example:\n      <code>\n    <repository isDefault=\"true\" label=\"Mem Repository\" name=\"default\">\n        <fulltext disabled=\"false\"/>\n    </repository>\n</code>\n",
              "documentationHtml": "<p>\nExtension points to register Memory repositories. Example:\n</p><p></p><pre><code>    &lt;repository isDefault&#61;&#34;true&#34; label&#61;&#34;Mem Repository&#34; name&#61;&#34;default&#34;&gt;\n        &lt;fulltext disabled&#61;&#34;false&#34;/&gt;\n    &lt;/repository&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mem/org.nuxeo.ecm.core.storage.mem.MemRepositoryService/ExtensionPoints/org.nuxeo.ecm.core.storage.mem.MemRepositoryService--repository",
              "id": "org.nuxeo.ecm.core.storage.mem.MemRepositoryService--repository",
              "label": "repository (org.nuxeo.ecm.core.storage.mem.MemRepositoryService)",
              "name": "repository",
              "version": "10.10-HF25"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mem/org.nuxeo.ecm.core.storage.mem.MemRepositoryService",
          "name": "org.nuxeo.ecm.core.storage.mem.MemRepositoryService",
          "requirements": [
            "org.nuxeo.ecm.core.storage.dbs.DBSRepositoryService"
          ],
          "resolutionOrder": 805,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.storage.mem.MemRepositoryService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mem/org.nuxeo.ecm.core.storage.mem.MemRepositoryService/Services/org.nuxeo.ecm.core.storage.mem.MemRepositoryService",
              "id": "org.nuxeo.ecm.core.storage.mem.MemRepositoryService",
              "overriden": false,
              "version": "10.10-HF25"
            }
          ],
          "startOrder": 864,
          "version": "10.10-HF25",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.storage.mem.MemRepositoryService\" version=\"1.0.0\">\n\n  <require>org.nuxeo.ecm.core.storage.dbs.DBSRepositoryService</require>\n\n  <documentation>\n    Manages Memory repositories.\n  </documentation>\n\n  <implementation class=\"org.nuxeo.ecm.core.storage.mem.MemRepositoryService\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.ecm.core.storage.mem.MemRepositoryService\" />\n  </service>\n\n  <extension-point name=\"repository\">\n    <documentation>\n      Extension points to register Memory repositories. Example:\n      <code>\n        <repository name=\"default\" label=\"Mem Repository\" isDefault=\"true\">\n          <fulltext disabled=\"false\" />\n        </repository>\n      </code>\n    </documentation>\n    <object class=\"org.nuxeo.ecm.core.storage.mem.MemRepositoryDescriptor\" />\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/mem-repository-service.xml",
          "xmlPureComponent": false
        }
      ],
      "fileName": "nuxeo-core-storage-mem-10.10-HF25.jar",
      "groupId": "org.nuxeo.ecm.core",
      "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mem",
      "id": "org.nuxeo.ecm.core.storage.mem",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: jenkins\r\nBuild-Jdk: 1.8.0_222\r\nBundle-ManifestVersion: 2\r\nBundle-Version: 10.10-HF25-t20200417-010546\r\nBundle-SymbolicName: org.nuxeo.ecm.core.storage.mem\r\nNuxeo-Component: OSGI-INF/mem-repository-service.xml\r\n\r\n",
      "maxResolutionOrder": 805,
      "minResolutionOrder": 805,
      "packages": [
        "nuxeo-10.10-HF24",
        "nuxeo-10.10-HF25"
      ],
      "requirements": [],
      "version": "10.10-HF25"
    },
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-core-storage-mongodb",
      "artifactVersion": "10.10-HF29",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.ecm.core.storage",
          "org.nuxeo.ecm.core.storage.dbs",
          "org.nuxeo.ecm.core.storage.mem",
          "org.nuxeo.ecm.core.storage.mongodb",
          "org.nuxeo.ecm.core.storage.sql",
          "org.nuxeo.ecm.core.storage.sql.management"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage",
        "id": "grp:org.nuxeo.ecm.core.storage",
        "name": "org.nuxeo.ecm.core.storage",
        "parentIds": [
          "grp:org.nuxeo.ecm.core"
        ],
        "readmes": [],
        "version": "10.10"
      },
      "bundleId": "org.nuxeo.ecm.core.storage.mongodb",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "\n      Property to disable the fact that on MongoDB a LIKE match anchors its search\n      (like in SQL databases), i.e., absent wildcards, it does not match in the middle of a string.\n\n      When true, does not match in the middle of a string.\n      When false, works as if there was a % on each side of the LIKE expression.\n\n      @since 10.3\n    \n",
              "documentationHtml": "<p>\nProperty to disable the fact that on MongoDB a LIKE match anchors its search\n(like in SQL databases), i.e., absent wildcards, it does not match in the middle of a string.\n</p><p>\nWhen true, does not match in the middle of a string.\nWhen false, works as if there was a % on each side of the LIKE expression.\n</p><p>\n&#64;since 10.3\n</p><p></p>",
              "extensionPoint": "org.nuxeo.runtime.ConfigurationService--configuration",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mongodb/org.nuxeo.ecm.core.storage.mongodb.configuration/Contributions/org.nuxeo.ecm.core.storage.mongodb.configuration--configuration",
              "id": "org.nuxeo.ecm.core.storage.mongodb.configuration--configuration",
              "registrationOrder": 19,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.ConfigurationService",
                "name": "org.nuxeo.runtime.ConfigurationService",
                "type": "service"
              },
              "version": "10.10-HF29",
              "xml": "<extension point=\"configuration\" target=\"org.nuxeo.runtime.ConfigurationService\">\n    <documentation>\n      Property to disable the fact that on MongoDB a LIKE match anchors its search\n      (like in SQL databases), i.e., absent wildcards, it does not match in the middle of a string.\n\n      When true, does not match in the middle of a string.\n      When false, works as if there was a % on each side of the LIKE expression.\n\n      @since 10.3\n    </documentation>\n    <!-- default is true for 10.3 and later -->\n    <property name=\"nuxeo.mongodb.like.anchored\">true</property>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mongodb/org.nuxeo.ecm.core.storage.mongodb.configuration",
          "name": "org.nuxeo.ecm.core.storage.mongodb.configuration",
          "requirements": [],
          "resolutionOrder": 154,
          "services": [],
          "startOrder": 154,
          "version": "10.10-HF29",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.storage.mongodb.configuration\">\n\n  <extension target=\"org.nuxeo.runtime.ConfigurationService\" point=\"configuration\">\n    <documentation>\n      Property to disable the fact that on MongoDB a LIKE match anchors its search\n      (like in SQL databases), i.e., absent wildcards, it does not match in the middle of a string.\n\n      When true, does not match in the middle of a string.\n      When false, works as if there was a % on each side of the LIKE expression.\n\n      @since 10.3\n    </documentation>\n    <!-- default is true for 10.3 and later -->\n    <property name=\"nuxeo.mongodb.like.anchored\">true</property>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/mongodb-configuration-properties.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService",
          "documentation": "\n    Manages MongoDB repositories.\n  \n",
          "documentationHtml": "<p>\nManages MongoDB repositories.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService",
              "descriptors": [
                "org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryDescriptor"
              ],
              "documentation": "\n      Extension points to register MongoDB repositories. The repository will ask for a MongoDB access to\n      MongoDBConnectionService with id 'repository/[repositoryName]'.\n\n      Example:\n      <code>\n    <repository isDefault=\"true\" label=\"MongoDB Repository\" name=\"default\">\n        <fulltext disabled=\"false\"/>\n    </repository>\n</code>\n",
              "documentationHtml": "<p>\nExtension points to register MongoDB repositories. The repository will ask for a MongoDB access to\nMongoDBConnectionService with id &#39;repository/[repositoryName]&#39;.\n</p><p>\nExample:\n</p><p></p><pre><code>    &lt;repository isDefault&#61;&#34;true&#34; label&#61;&#34;MongoDB Repository&#34; name&#61;&#34;default&#34;&gt;\n        &lt;fulltext disabled&#61;&#34;false&#34;/&gt;\n    &lt;/repository&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mongodb/org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService/ExtensionPoints/org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService--repository",
              "id": "org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService--repository",
              "label": "repository (org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService)",
              "name": "repository",
              "version": "10.10-HF29"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mongodb/org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService",
          "name": "org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService",
          "requirements": [
            "org.nuxeo.ecm.core.storage.dbs.DBSRepositoryService"
          ],
          "resolutionOrder": 806,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mongodb/org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService/Services/org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService",
              "id": "org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService",
              "overriden": false,
              "version": "10.10-HF29"
            }
          ],
          "startOrder": 865,
          "version": "10.10-HF29",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService\" version=\"1.0.0\">\n\n  <require>org.nuxeo.ecm.core.storage.dbs.DBSRepositoryService</require>\n\n  <documentation>\n    Manages MongoDB repositories.\n  </documentation>\n\n  <implementation class=\"org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryService\" />\n  </service>\n\n  <extension-point name=\"repository\">\n    <documentation>\n      Extension points to register MongoDB repositories. The repository will ask for a MongoDB access to\n      MongoDBConnectionService with id 'repository/[repositoryName]'.\n\n      Example:\n      <code>\n        <repository name=\"default\" label=\"MongoDB Repository\" isDefault=\"true\">\n          <fulltext disabled=\"false\" />\n        </repository>\n      </code>\n    </documentation>\n    <object class=\"org.nuxeo.ecm.core.storage.mongodb.MongoDBRepositoryDescriptor\" />\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/mongodb-repository-service.xml",
          "xmlPureComponent": false
        }
      ],
      "fileName": "nuxeo-core-storage-mongodb-10.10-HF29.jar",
      "groupId": "org.nuxeo.ecm.core",
      "hierarchyPath": "/grp:org.nuxeo.ecm.core/grp:org.nuxeo.ecm.core.storage/org.nuxeo.ecm.core.storage.mongodb",
      "id": "org.nuxeo.ecm.core.storage.mongodb",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: jenkins\r\nBuild-Jdk: 1.8.0_222\r\nBundle-ManifestVersion: 2\r\nBundle-Version: 10.10-HF29-t20200701-010446\r\nBundle-SymbolicName: org.nuxeo.ecm.core.storage.mongodb\r\nNuxeo-Component: OSGI-INF/mongodb-repository-service.xml,OSGI-INF/mong\r\n odb-configuration-properties.xml\r\n\r\n",
      "maxResolutionOrder": 806,
      "minResolutionOrder": 154,
      "packages": [
        "nuxeo-10.10-HF02",
        "nuxeo-10.10-HF04",
        "nuxeo-10.10-HF05",
        "nuxeo-10.10-HF09",
        "nuxeo-10.10-HF10",
        "nuxeo-10.10-HF14",
        "nuxeo-10.10-HF15",
        "nuxeo-10.10-HF17",
        "nuxeo-10.10-HF18",
        "nuxeo-10.10-HF21",
        "nuxeo-10.10-HF23",
        "nuxeo-10.10-HF24",
        "nuxeo-10.10-HF25",
        "nuxeo-10.10-HF27",
        "nuxeo-10.10-HF29"
      ],
      "requirements": [],
      "version": "10.10-HF29"
    }
  ],
  "creationDate": 1664793571025,
  "key": "Nuxeo Platform LTS 2019-10.10",
  "name": "Nuxeo Platform LTS 2019",
  "operations": [],
  "packages": [
    {
      "@type": "NXPackage",
      "bundles": [
        "org.nuxeo.ecm.core.storage.mem",
        "org.nuxeo.ecm.core.storage.mongodb",
        "org.nuxeo.ecm.platform.audit",
        "org.nuxeo.web.ui"
      ],
      "conflicts": [],
      "dependencies": [
        "nuxeo-10.10-HF23:1.0.0"
      ],
      "hierarchyPath": "/nuxeo-10.10-HF24-1.0.0",
      "id": "nuxeo-10.10-HF24-1.0.0",
      "name": "nuxeo-10.10-HF24",
      "optionalDependencies": [],
      "packageType": "hotfix",
      "title": "Nuxeo 10.10-HF24",
      "version": "1.0.0"
    }
  ],
  "pluginSnapshots": {},
  "releaseDate": 1547942400000,
  "version": "10.10"
}